package com.ruoyi.resource.domain;

import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;

/**
 * 文件对象 res_file_info
 * 
 * @author mohao
 * @date 2023-05-19
 */
public class FileInfo extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** ID */
    private Long id;

    /** 文件名 */
    @Excel(name = "文件名")
    private String fileName;

    /** 上传时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "上传时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date crateDate;

    /** 文件大小 */
    @Excel(name = "文件大小")
    private String fileSize;

    /** 文件类型(0文档,1图片,2视频) */
    @Excel(name = "文件类型(0文档,1图片,2视频)")
    private Long fileType;

    /** 文件真实路径 */
    @Excel(name = "文件真实路径")
    private String filePath;

    /** 是否为文件夹 */
    @Excel(name = "是否为文件夹")
    private Integer folder;

    /** 所属的用户 */
    @Excel(name = "所属的用户")
    private Long userId;

    /** 秒传 */
    @Excel(name = "秒传")
    private String md5;

    /** 互联网访问路径 */
    @Excel(name = "互联网访问路径")
    private String httpPath;

    /** 状态:1显示,0隐藏 */
    @Excel(name = "状态:1显示,0隐藏")
    private Integer state;

    /** 父文件id */
    @Excel(name = "父文件id")
    private Long parentId;

    public void setId(Long id) 
    {
        this.id = id;
    }

    public Long getId() 
    {
        return id;
    }
    public void setFileName(String fileName) 
    {
        this.fileName = fileName;
    }

    public String getFileName() 
    {
        return fileName;
    }
    public void setCrateDate(Date crateDate) 
    {
        this.crateDate = crateDate;
    }

    public Date getCrateDate() 
    {
        return crateDate;
    }
    public void setFileSize(String fileSize) 
    {
        this.fileSize = fileSize;
    }

    public String getFileSize() 
    {
        return fileSize;
    }
    public void setFileType(Long fileType) 
    {
        this.fileType = fileType;
    }

    public Long getFileType() 
    {
        return fileType;
    }
    public void setFilePath(String filePath) 
    {
        this.filePath = filePath;
    }

    public String getFilePath() 
    {
        return filePath;
    }
    public void setFolder(Integer folder) 
    {
        this.folder = folder;
    }

    public Integer getFolder() 
    {
        return folder;
    }
    public void setUserId(Long userId) 
    {
        this.userId = userId;
    }

    public Long getUserId() 
    {
        return userId;
    }
    public void setMd5(String md5) 
    {
        this.md5 = md5;
    }

    public String getMd5() 
    {
        return md5;
    }
    public void setHttpPath(String httpPath) 
    {
        this.httpPath = httpPath;
    }

    public String getHttpPath() 
    {
        return httpPath;
    }
    public void setState(Integer state) 
    {
        this.state = state;
    }

    public Integer getState() 
    {
        return state;
    }
    public void setParentId(Long parentId) 
    {
        this.parentId = parentId;
    }

    public Long getParentId() 
    {
        return parentId;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("fileName", getFileName())
            .append("crateDate", getCrateDate())
            .append("fileSize", getFileSize())
            .append("fileType", getFileType())
            .append("filePath", getFilePath())
            .append("folder", getFolder())
            .append("userId", getUserId())
            .append("md5", getMd5())
            .append("httpPath", getHttpPath())
            .append("state", getState())
            .append("parentId", getParentId())
            .toString();
    }
}
